/*
 * GestorTipoIva.java
 *
 * Created on 21 de agosto de 2007, 23:10
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */

package gestores.administracion;


import dal.TipoIvaDAL;
import excepciones.AvwException;
import java.util.ArrayList;
import java.util.HashMap;
import negocio.TipoIva;


/**
 *
 * @authorfederico
 */
public class GestorTipoIva {
    
 
    public GestorTipoIva() {
    }
        /**
     * Lista los tipo iva con los siguientes datos
     * tivCodigo y tivNombre.
     * @return ArrayList<HashMap>
     * */
    public static ArrayList<HashMap> listarTipoIva() throws AvwException, NullPointerException {
        ArrayList<HashMap> tipoIva = new ArrayList<HashMap>();

        for (TipoIva tipo: TipoIvaDAL.listarTipoIva()) {
            HashMap hash = new HashMap();
            
            hash.put("tivCodigo",tipo.getTivCodigo());
            hash.put("tivNombre",tipo.getTivNombre());
            
            tipoIva.add(hash);
            
        }

        return tipoIva;
    }
    
    /**
     * @param String tivCodigo. //NO SE PASA EL CODIGO DE USUARIO, ES AUTOCALCULADO
     * @param String tivNombre.     
     * */
    public static void insertarTipoIva(String tivNombre) throws AvwException {
        TipoIva tipoIva = new TipoIva();        
        tipoIva.setTivNombre(tivNombre);                

        try{
            
             TipoIvaDAL.insertarTipoIva(tipoIva);
             
        } catch (AvwException e){
          //UsuarioDAL.existeUsuarioPorNombreUsuario(usuarioWeb);
            //Si existe hacerlo saber con una excepcion
               //throw new AvwException("Ya existe usuario", true);
        }
    }
    /**
     * @param String tivCodigo.
     * @param String tivNombre.     
     **/
    public static void modificarUsuario(String tivCodigo, String tivNombre) throws AvwException {
        
        TipoIva tipo = new TipoIva();
        tipo.setTivCodigo(tivCodigo);
        tipo.setTivNombre(tivNombre);
        
        TipoIvaDAL.modificarUsuario(tipo);                    
    }
    /**
     *@param String tivCodigo
     **/
    public static void eliminarTipoIva(String tivCodigo) throws AvwException{
        TipoIva tipo = new TipoIva();
        tipo.setTivCodigo(tivCodigo);
        
        TipoIvaDAL.eliminarTipoIva(tipo);
        
    }   
}
